% !Mode:: "TeX:UTF-8"

\chapter{项目测试文档}

\section{引言}

本测试文档旨在对“饿了吧V2.0”项目进行全面的测试，以确保项目能够满足预期的功能和质量要求。测试涵盖了项目的前端和后端，包括功能测试、性能测试、安全测试等方面。
\section{测试目标}
1. 验证项目的各项功能是否完整且符合需求规格说明书的要求。

2. 检查项目在不同场景下的稳定性和可靠性。

3. 发现并修复项目中存在的缺陷和漏洞，提高项目的质量。
\section{测试范围}
\subsection{前端功能测试}
用户界面测试：检查页面布局、颜色、字体等是否符合设计要求，页面是否能够正常加载和显示。

交互测试：测试用户与页面的交互操作，如点击、输入、滑动等是否正常响应。

功能测试：测试商家入驻平台、用户注册、用户点餐、购物车管理、送货地址管理、下单支付等功能是否正常。
\subsection{后端功能测试}
接口测试：测试后端提供的接口是否能够正常响应前端的请求，返回的数据是否准确。

数据库测试：测试数据库的存储和检索功能，确保数据的完整性和一致性。

业务逻辑测试：测试后端的业务逻辑是否正确，如订单处理、用户权限验证等。
\subsection{性能测试}
响应时间测试：测试系统在不同负载下的响应时间，确保系统能够及时响应用户的请求。

吞吐量测试：测试系统在单位时间内能够处理的请求数量，确保系统能够满足预期的并发需求。
\subsection{安全测试}
用户隐私信息保护测试：测试用户的隐私信息如电话号码、登录密码等是否进行了加密处理，是否存在信息泄露的风险。

权限验证测试：测试系统是否对用户的权限进行了正确的验证，防止未授权的用户访问敏感信息。
\section{测试环境}
\subsection{硬件环境}
服务器：aliyun

客户端：戴尔G15 5520/intel i7-12700H/RTX3060
\subsection{软件环境}
操作系统：Windows 11 家庭中文版 23H2

数据库：MySQL 8.0.24

前端框架：VUE 3

后端框架：Spring Boot 3.2.1
\section{测试用例}
以下是部分测试用例的示例：
\subsection{商家入驻平台功能测试，如表~\ref{tab:table1}~所示。}
\begin{table}[htbp]
\caption{商家入驻平台功能测试表}\label{tab:table1}
\vspace{0.5em}\centering
\begin{tabularx}{\textwidth}{XXXXX}
\toprule[1.5pt]
测试用例编号 & 测试步骤 & 预期结果 & 实际结果 & 是否通过\\
\midrule[1pt]
TC-001 & 点击商家入驻按钮 & 跳转到商家入驻页面 & 跳转到商家入驻页面 & 是\\
TC-002 & 填写商家信息并提交 & 商家信息成功保存到数据库 & 商家信息成功保存到数据库 & 是\\
TC-003 & 查看已入驻商家列表 & 能够正确显示已入驻商家的信息 & 跳转到商家入驻页面 & 是\\
\bottomrule[1.5pt]
\end{tabularx}
\vspace{\baselineskip}
\end{table}

\subsection{用户注册功能测试，如表~\ref{tab:table2}~所示。}
\begin{table}[htbp]
\caption{用户注册功能测试表}\label{tab:table2}
\vspace{0.5em}\centering
\begin{tabularx}{\textwidth}{XXXXX}
\toprule[1.5pt]
测试用例编号 & 测试步骤 & 预期结果 & 实际结果 & 是否通过\\
\midrule[1pt]
TC-004 & 点击用户注册按钮 & 跳转到用户注册页面 & 跳转到用户注册页面 & 是\\
TC-005 & 填写用户信息并提交 & 用户信息成功保存到数据库，用户注册成功 & 用户信息成功保存到数据库，用户注册成功 & 是\\
TC-006 & 使用已注册的用户名再次注册 & 提示用户名已存在 & 提示用户名已存在 & 是\\
\end{tabularx}
\vspace{\baselineskip}
\end{table}

\subsection{用户点餐功能测试，如表~\ref{tab:table3}~所示。}
\begin{table}[htbp]
\caption{用户点餐功能测试表}\label{tab:table3}
\vspace{0.5em}\centering
\begin{tabularx}{\textwidth}{XXXXX}
\toprule[1.5pt]
测试用例编号 & 测试步骤 & 预期结果 & 实际结果 & 是否通过\\
\midrule[1pt]
TC-007 & 进入点餐页面 & 能够正确显示菜品信息 & 能够正确显示菜品信息 & 是\\
TC-008 & 选择菜品并加入购物车 & 菜品成功加入购物车 & 菜品成功加入购物车 & 是\\
TC-009 & 修改购物车中菜品的数量 & 购物车中菜品的数量正确更新 & 购物车中菜品的数量正确更新 & 是\\
TC-010 & 提交订单并进行支付 & 订单提交成功，支付成功返回 & 订单提交成功，支付成功返回 & 是\\
\bottomrule[1.5pt]
\end{tabularx}
\vspace{\baselineskip}
\end{table}

\subsection{购物车管理功能测试，如表~\ref{tab:table4}~所示。}
\begin{table}[htbp]
\caption{购物车管理功能测试表}\label{tab:table4}
\vspace{0.5em}\centering
\begin{tabularx}{\textwidth}{XXXXX}
\toprule[1.5pt]
测试用例编号 & 测试步骤 & 预期结果 & 实际结果 & 是否通过\\
\midrule[1pt]
TC-011 & 查看购物车 & 能够正确显示购物车中的菜品信息和数量 & 能够正确显示购物车中的菜品信息和数量 & 是\\
TC-012 & 从购物车中删除菜品 & 菜品成功从购物车中删除 & 菜品成功从购物车中删除 & 是\\
TC-013 & 清空购物车 & 购物车中的菜品全部清空 & 购物车中的菜品全部清空 & 是\\
\bottomrule[1.5pt]
\end{tabularx}
\vspace{\baselineskip}
\end{table}

\subsection{送货地址管理功能测试，如表~\ref{tab:table5}~所示。}
\begin{table}[htbp]
\caption{送货地址管理功能测试表}\label{tab:table5}
\vspace{0.5em}\centering
\begin{tabularx}{\textwidth}{XXXXX}
\toprule[1.5pt]
测试用例编号 & 测试步骤 & 预期结果 & 实际结果 & 是否通过\\
\midrule[1pt]
TC-014 & 添加新的收货地址 & 收货地址成功添加，能够正确显示用户信息 & 收货地址成功添加，能够正确显示用户信息 & 是\\
TC-015 & 修改送货地址 & 送货地址成功修改 & 送货地址成功修改 & 是\\
TC-016 & 选择默认送货地址 & 下单时默认使用选择的送货地址 & 下单时默认使用选择的送货地址 & 是\\
\bottomrule[1.5pt]
\end{tabularx}
\vspace{\baselineskip}
\end{table}

\subsection{下单支付功能测试，如表~\ref{tab:table6}~所示。}
\begin{table}[htbp]
\caption{下单支付功能测试表}\label{tab:table6}
\vspace{0.5em}\centering
\begin{tabularx}{\textwidth}{XXXXX}
\toprule[1.5pt]
测试用例编号 & 测试步骤 & 预期结果 & 实际结果 & 是否通过\\
\midrule[1pt]
TC-017 & 在购物车中选择菜品并下单 & 订单成功生成，能够正确显示订单信息 & 订单成功生成，能够正确显示订单信息 & 是\\
TC-018 & 点击支付按钮 & 完成支付，返回支付成功 & 完成支付，返回支付成功 & 是\\
TC-019 & 历史未支付订单有支付入口 & 历史未支付订单能够正确显示支付入口 & 历史未支付订单能够正确显示支付入口 & 是\\
\bottomrule[1.5pt]
\end{tabularx}
\vspace{\baselineskip}
\end{table}

\subsection{前后端接口测试，如表~\ref{tab:table7}~所示。}
\begin{table}[htbp]
\caption{前后端接口测试表}\label{tab:table7}
\vspace{0.5em}\centering
\begin{tabularx}{\textwidth}{XXXXX}
\toprule[1.5pt]
测试用例编号 & 测试步骤 & 预期结果 & 实际结果 & 是否通过\\
\midrule[1pt]
TC-020 & 发送前端请求到后端接口 & 后端接口能够正确响应，返回的数据格式符合要求 & 后端接口能够正确响应，返回的数据格式符合要求 & 是\\
TC-021 & 测试后端接口的参数验证功能 & 对于不符合要求的参数，后端接口能够返回错误信息 & 对于不符合要求的参数，后端接口能够返回错误信息 & 是\\
TC-022 & 测试后端接口的业务逻辑处理功能 & 后端接口能够正确处理业务逻辑，返回的数据符合预期 & 后端接口能够正确处理业务逻辑，返回的数据符合预期 & 是\\
\bottomrule[1.5pt]
\end{tabularx}
\vspace{\baselineskip}
\end{table}

\subsection{数据库测试，如表~\ref{tab:table8}~所示。}
\begin{table}[htbp]
\caption{数据库测试表}\label{tab:table8}
\vspace{0.5em}\centering
\begin{tabularx}{\textwidth}{XXXXX}
\toprule[1.5pt]
测试用例编号 & 测试步骤 & 预期结果 & 实际结果 & 是否通过\\
\midrule[1pt]
TC-023 & 插入数据到数据库 & 数据成功插入到数据库 & 数据成功插入到数据库 & 是\\
TC-024 & 查询数据库中的数据 & 能够正确查询到插入的数据 & 能够正确查询到插入的数据 & 是\\
TC-025 & 更新数据库中的数据 & 数据成功更新 & 数据成功更新 & 是\\
TC-026 & 删除数据库中的数据 & 数据成功删除 & 数据成功删除 & 是\\
\bottomrule[1.5pt]
\end{tabularx}
\vspace{\baselineskip}
\end{table}

\subsection{性能测试，如表~\ref{tab:table9}~所示。}
\begin{table}[htbp]
\caption{性能测试表}\label{tab:table9}
\vspace{0.5em}\centering
\begin{tabularx}{\textwidth}{XXXXX}
\toprule[1.5pt]
测试用例编号 & 测试步骤 & 预期结果 & 实际结果 & 是否通过\\
\midrule[1pt]
TC-027 & 在并发情况下进行用户注册 & 系统能够正常处理用户注册请求，响应时间在可接受范围内 & 系统能够正常处理用户注册请求，响应时间在可接受范围内 & 是\\
TC-028 & 在大量数据情况下进行查询操作 & 系统能够快速返回查询结果，响应时间在可接受范围内 & 系统能够快速返回查询结果，响应时间在可接受范围内 & 是\\
\bottomrule[1.5pt]
\end{tabularx}
\vspace{\baselineskip}
\end{table}

\subsection{安全测试，如表~\ref{tab:table10}~所示。}
\begin{table}[htbp]
\caption{安全测试表}\label{tab:table10}
\vspace{0.5em}\centering
\begin{tabularx}{\textwidth}{XXXXX}
\toprule[1.5pt]
测试用例编号 & 测试步骤 & 预期结果 & 实际结果 & 是否通过\\
\midrule[1pt]
TC-029 & 测试用户隐私信息的加密处理 & 用户的隐私信息如电话号码、登录密码等进行了加密处理，无法直接获取明文信息 & 用户的隐私信息如电话号码、登录密码等进行了加密处理，无法直接获取明文信息 & 是\\
TC-030 & 测试用户权限验证功能 & 未授权的用户无法访问敏感信息，只有授权用户能够进行相应的操作 & 未授权的用户无法访问敏感信息，只有授权用户能够进行相应的操作 & 是\\
\bottomrule[1.5pt]
\end{tabularx}
\vspace{\baselineskip}
\end{table}

\subsection{添加功能测试，如表~\ref{tab:table11}~所示。}
\begin{table}[htbp]
\caption{添加功能测试表}\label{tab:table11}
\vspace{0.5em}\centering
\begin{tabularx}{\textwidth}{XXXXX}
\toprule[1.5pt]
测试用例编号 & 测试步骤 & 预期结果 & 实际结果 & 是否通过\\
\midrule[1pt]
TC-031 & 用户下单并完成支付、评价等操作 & 根据积分获得规则，用户获得相应的积分 & 根据积分获得规则，用户获得相应的积分 & 是\\
TC-032 & 用户进入积分查询页面 & 能够正确显示用户的积分余额和积分明细 & 能够正确显示用户的积分余额和积分明细 & 是\\
TC-033 & 用户对账户积分进行使用 & 可以按照积分使用规则进行抵扣 & 可以按照积分使用规则进行抵扣 & 是\\
TC-034 & 使用客服功能进行提问 & 客服可以根据问题做出符合外卖客服的回答逻辑 & 客服可以根据问题做出符合外卖客服的回答逻辑 & 是\\
\bottomrule[1.5pt]
\end{tabularx}
\vspace{\baselineskip}
\end{table}

\section{测试结果}
第一次测试完成后，已经对对测试结果进行总结和分析。对于发现缺陷或问题，我们及时记录并反馈给对应功能开发者进行修复。现在呈现的为修复后进行回归测试的测试文档，在此之前发现的问题得到彻底解决。
\section{结论}
通过本次测试，“饿了吧V2.0”项目在功能、性能、安全等方面基本满足要求。但在测试过程中也发现了一些可以改进的方向，将在本课程结束后与开发团队进一步优化和改进，对项目进行优化。总体来说，项目已完成云端部署，可以满足基本的使用需求，并已经在此基础上加以完善，针对bug以及所需进行修改修复，同时增加了部分实用新功能，如积分抵扣等等。

